package gov.mogaha.ntis.cmm.mob.view;

import gov.mogaha.ntis.cmm.mob.R;

import java.util.ArrayList;

import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;



/** <B><I>public class AddressDistrictListView extends NewAddressReferencialListView</B></I><BR>
 * 시군구를 검색할 때 사용할 수 있는 리스트셋.
 * @author 이전봉
 * @version 1.0
 * @see AddressListView
 *
 */
public class AddressDistrictListView extends NewAddressReferencialListView {
	private final Context context;
	//private View view;
	
	
	
	/**<B><I>public AddressDistrictListView(Context context, AttributeSet attrs)</I></B><BR>
	 * 새로운 AddressDistrictListView 개체를 생성한다. 생성 후 반드시 initiate(ArrayList&LTArrayList&LTString&GT&GT arrItems) 
	 * 메소드를 호출해 주어야 리스트가 표시된다.
	 * @param context
	 * @param attrs
	 * @since 1.0
	 */
	public AddressDistrictListView(Context context, AttributeSet attrs) {
		super(context, attrs);
		this.context = context;
		
		//인플레이트 및 기본적인 위젯 초기화
		layoutInflate();
		
		//데이터셋 새로고침
		notifyDataSetChanged();
	}
	
	
	
	/**<B><I>private void layoutInflate()</B></I><BR>
	 * 리스트셋의 레이아웃을 인플레이트하고 위젯을 초기화한다.
	 * @since 1.0
	 */
	private void layoutInflate() {
//		LayoutInflater inflater = (LayoutInflater) getContext()
//				.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//		view = inflater.inflate(R.layout.address_list_view, this, false);
//		addView(view);
		
		
		textItemCount = (TextView)findViewById(R.id.text_AddrListView_ItemCount);
		textNoItems = (TextView)findViewById(R.id.text_AddrListView_Sub);
		
		layList = (LinearLayout)findViewById(R.id.lay_AddrListView_List);
	}
	
	
	
	/**<B><I>public void initiate(ArrayList&LTArrayList&LTString&GT&GT arrItems)</B></I><BR>
	 * 지정할 ArrayList를 사용하여 리스트를 초기화한다.
	 * @since 1.0
	 */
	@Override
	public void initiate(ArrayList<ArrayList<String>> arrItems) {
		this.setVisibility(View.GONE);
		
		listAddr = (ListView)findViewById(R.id.list_AddrListView_List);
		
		//헤더 설정
		setHeader(R.layout.address_district_list_view_header);
		
		//데이터셋 설정
		setDataset(arrItems);
		
		//어댑터 설정
		setAdapter(new AddressDistrictListViewAdapter(
				context, R.layout.address_district_list_view_resource, this.arrItems));
		
		//하단 라인 설정
		footLine = (View)findViewById(R.id.view_AddrListView_Line);
	}
}



















